#define _CRT_SECURE_NO_WARNINGS 1

//KY222 打印日期
//描述
//给出年分m和一年中的第n天，算出第n天是几月几号。
//输入描述：
//输入包括两个整数y(1 <= y <= 3000)，n(1 <= n <= 366)。
//输出描述：
//可能有多组测试数据，对于每组数据， 按 yyyy - mm - dd的格式将输入中对应的日期打印出来。
//
//输入：
//2000 3
//2000 31
//2000 40
//2000 60
//2000 61
//2001 60

//输出：
//2000 - 01 - 03
//2000 - 01 - 31
//2000 - 02 - 09
//2000 - 02 - 29
//2000 - 03 - 01
//2001 - 03 - 01

//思路：从当年1月0日开始日期+=天数=日期，保证原日期不变，再用+重载
//#include <iostream>
//using namespace std;
//
//class Date
//{
//public:
//    int GetMonthDay(int year, int month)
//    {
//        static int days[13] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };
//        if (month == 2
//            && (year % 400 == 0 || year % 4 == 0 && year % 100 != 0))
//        {
//            return 29;
//        }
//        else {
//            return days[month];
//        }
//    }
//    Print放类里内联不好，代码太多了，编译器无法展开。
    //void Print()
    //{

    //  if (_month > 0 && _month < 10)
    //  {
    //      if (_day > 0 && _day < 10)
    //        {
    //            cout << _year << "-0" << _month << "-0" << _day << endl;
    //        }
    //        else
    //        {
    //            cout << _year << "-0" << _month << "-" << _day << endl;
    //        }
    //    }
    //    else
    //    {
    //        if (_day > 0 && _day < 10)
    //        {
    //            cout << _year << "-" << _month << "-0" << _day << endl;
    //        }
    //        else
    //        {
    //            cout << _year << "-" << _month << "-" << _day << endl;
    //        }
    //    }
    //}
//    Date(int year, int month, int day)
//        :_year(year)
//        , _month(month)
//        , _day(day)
//    {
//        ;
//    }
//    Date(const Date& d)
//    {
//        _year = d._year;
//        _month = d._month;
//        _day = d._day;
//    }
//    //日期+=天数
//    Date& operator+=(int day);
//    //日期+天数
//    Date operator+(int day) const;
//
//private:
//    int _year;
//    int _month;
//    int _day;
//};
//
//
//Date& Date::operator+=(int day)
//{
//    _day += day;
//    while (_day > GetMonthDay(_year, _month))
//    {
//        _day -= GetMonthDay(_year, _month);
//        ++_month;
//        if (_month == 13)
//        {
//            _month = 1;
//            ++_year;
//        }
//    }
//    return *this;
//}
//
//Date Date::operator+(int day) const
//{
//    Date ret = *this;
//    ret += day;
//    return ret;
//}
//
//int main()
//{
//    int year_, day_;
//    while (cin >> year_ >> day_)
//    {
//        Date d1(year_, 1, 0);
//        Date d2 = (d1 + day_);
//        d2.Print();
//    }
//    return 0;
//}


//描述
//设计一个程序能计算一个日期加上若干天后是什么日期。
//输入描述：
//输入第一行表示样例个数m，接下来m行每行四个整数分别表示年月日和累加的天数。
//输出描述：
//输出m行，每行按yyyy - mm - dd的个数输出。

//输入：
//1
//2008 2 3 100
//
//输出：
//2008 - 05 - 13

#include <climits>
#include <iostream>
using namespace std;

class Date
{
public:
    Date(int year, int month, int day)
        :_year(year)
        , _month(month)
        , _day(day)
    {
        ;
    }
    Date(const Date& d)
    {
        _year = d._year;
        _month = d._month;
        _day = d._day;
    }
    int GetMonthDay(int year, int month)
    {
        static int days[13] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };
        if (month == 2
            && (year % 400 == 0 || year % 4 == 0 && year % 100 != 0)
            )
        {
            return 29;
        }
        else
        {
            return days[month];
        }
    }

    void Print()
    {
        if (_month > 0 && _month < 10)
        {
            if (_day > 0 && _day < 10)
            {
                cout << _year << "-0" << _month << "-0" << _day << endl;
            }
            else
            {
                cout << _year << "-0" << _month << "-" << _day << endl;
            }
        }
        else
        {
            if (_day > 0 && _day < 10)
            {
                cout << _year << "-" << _month << "-0" << _day << endl;
            }
            else
            {
                cout << _year << "-" << _month << "-" << _day << endl;
            }
        }
    }
    //日期+=天数
    Date& operator+=(int day);

private:
    int _year = 0;
    int _month = 0;
    int _day = 0;
};

Date& Date::operator+=(int day)
{
    _day += day;
    while (_day > GetMonthDay(_year, _month))
    {
        _day -= GetMonthDay(_year, _month);
        ++_month;
        if (_month == 13)
        {
            _month = 1;
            ++_year;
        }
    }
    return *this;
}

int main() {
    int m;
    cin >> m;
    int year, month, day, sum;

    while (m--)
    {
        cin >> year >> month >> day >> sum;
        Date date(year, month, day);
        Date new_d = (date += sum);
        new_d.Print();
    }

    return 0;
}